V2EX  ›  英汉词典
Enqueued related words: Design By Contract, Open-Closed Principle

Liskov Substitution Principle

释义 Definition

里氏替换原则(LSP):面向对象设计中的一条核心原则,意思是在不影响程序正确性的前提下,任何使用基类(父类)对象的地方,都应该能够透明地用其子类对象替换。它强调子类必须遵守父类对外承诺的行为(契约),避免“继承后反而破坏原有逻辑”。

(它也常被视为 SOLID 五大原则中的 L。)

发音 Pronunciation (IPA)

/ˈlɪskɔv/ /ˌsʌbstɪˈtuːʃən/ /ˈprɪnsəpəl/

例句 Examples

The Liskov Substitution Principle helps me design safer inheritance. /lɪskɔv/ /sʌbstɪˈtuːʃən/ /ˈprɪnsəpəl/ 帮助我设计更安全的继承关系。

If a subclass changes expected behavior, it violates the Liskov Substitution Principle and can break existing code. /ɪf/ /ə/ /ˈsʌbklæs/ /tʃeɪndʒɪz/ /ɪkˈspɛktɪd/ /bɪˈheɪvjər/, /ɪt/ /ˈvaɪəleɪts/ /ðə/ /ˈlɪskɔv/ /ˌsʌbstɪˈtuːʃən/ /ˈprɪnsəpəl/ /ænd/ /kæn/ /breɪk/ /ɪɡˈzɪstɪŋ/ /koʊd/。
如果子类改变了人们对其行为的预期,就违反了里氏替换原则,并可能破坏既有代码。

词源 Etymology

该术语以计算机科学家 Barbara Liskov(芭芭拉·里氏科夫) 命名。它最早与“数据抽象、子类型(subtyping)与行为规范”相关的研究密切相连;后来在面向对象设计中被归纳为“子类必须可替换父类”的设计原则,用来约束继承带来的行为兼容性问题。

相关词 Related Words

文献与作品 Notable Works

  • Agile Software Development, Principles, Patterns, and Practices(Robert C. Martin,“SOLID”体系中常讲解LSP)
  • Clean Architecture(Robert C. Martin,讨论面向对象边界与替换/依赖的设计思想)
  • Design Patterns: Elements of Reusable Object-Oriented Software(GoF,虽不以LSP为标题,但其模式实践依赖可替换与多态的前提)
  • Barbara Liskov 等关于抽象数据类型与子类型的经典论文与著作(LSP思想来源的学术脉络)
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   790 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 18:50 · PVG 02:50 · LAX 10:50 · JFK 13:50
♥ Do have faith in what you're doing.